// 滑动窗口的重要性质是：窗口的左边界和右边界永远只能向右移动，而不能向左移动
// 当窗口的和小于 target 的时候，窗口的和需要增加，所以要扩大窗口，窗口的右边界向右移动
// 当窗口的和大于 target 的时候，窗口的和需要减少，所以要缩小窗口，窗口的左边界向左移动
// 当窗口的和恰好等于 target 的时候，我们需要记录此时的结果，接下来找 i + 1 开头的序列
// 所以窗口的左边界要向左移动

var findContinuousSequence = function (target) {
  let i = 1,
    j = 1,
    sum = 0,
    res = [];
  while (i < target / 2) {
    if (sum < target) {
      sum += j;
      j++;
    } else if (sum > target) {
      sum -= i;
      i++;
    } else {
      let arr = [];
      for (let k = i; k < j; k++) {
        arr.push(k);
      }
      res.push(arr);
      sum -= i;
      i++;
    }
  }
  return res;
};
